Gps receiver with fast acquisition time

ABSTRACT

Method for acquiring a plurality of GPS signals, in which the signals received from the space vehicles are correlated, in an array of parallel processing modules ( 20 ) with local replicas of a pseudorandom code. The local pseudorandom code generators are slewed periodically, on detection of an external periodical trigger INT_ACC, and the correlation data are dumped simultaneously to all processing modules in output registers for acquisition and tracking software. The integration period is shorter than the natural period of the pseudorandom code sequence, and all the local generators are slewed at the same time, thereby allowing a quicker acquisition of the SV C/A code.

REFERENCE DATA

This is a continuation of application Ser. No. 11/324,976, filed on Jan.3, 2006, which is a continuation of PCT/EP2004/051336, filed Jul. 2,2004, which claims priority from U.S. provisional patent applicationUS60/484,737, filed on Jul. 3, 2003, which is hereby incorporated byreference.

FIELD OF THE INVENTION

Subject of the present invention is a navigation satellite receiver, andmore particularly a GPS receiver circuit wherein the acquisition time,that is the time needed to obtain a first positional fix after acomplete shutdown of the system is particularly low.

DESCRIPTION OF RELATED ART

GPS receiver system are nowadays used in a multitude of application, andit can be truly said that after a start phase, in which its applicationswere essentially confined to military, research, and few specializedfields, like maritime navigation, GPS is rapidly finding a place in manyother professional and leisure applications.

As it is known, a GPS receiver is designed to determine its location bycorrelating the radio signal emitted from a constellation of spacevehicles orbiting around the earth. It is a common problem with GPSreceivers that they require a long start-up time before delivering afirst positional fix after a cold start.

During this start-up time the receiver has to acquire the signal of theavailable space vehicles, and download the navigational data from the 50bps GPS NAV stream or from other sources. These operations areinherently time-consuming, so that the start time after a cold start iscommonly of the order of several tens of seconds.

This long start-up time, often indicated as time to the first fix(TTFF), is a limiting factor in many applications of GPS. In particularin certain low-rate, low power applications, like for example locationservices in portable telecommunication networks and the like, where itwould be desirable to supply the GPS module only for short periods oftime.

An object of the present application is a GPS receiver overcoming theabove shortcoming of the prior art, and a GPS receiver providing afaster time for delivering a first positional fix

BRIEF SUMMARY OF THE INVENTION

The above object is attained by a GPS receiver comprising thecharacteristics of the appended claims, and in particular by Signalprocessor for use in a navigation satellite receiver, comprising aplurality of tracking modules, for processing a plurality of navigationranging signals, each tracking module comprising:

a pseudorandom code generator, for generating a replica code sequence;

a correlator, for obtaining a time-integrated correlation value betweena navigation ranging signal and said replica code sequence;

wherein said signal processor has a first functioning mode, and saidsignal processor is arranged to simultaneously dump said time-integratedcorrelation values from said multiplicity of tracking modules when insaid first functioning mode.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows a GPS processor according to the present invention.

FIG. 2 shows a timing diagram of a signal processor according to thepresent invention.

DETAILED DESCRIPTION OF THE INVENTION

In a typical GPS Receiver the 1575.42 MHz signal received from the SpaceVehicles (SV) is down-converted to an intermediate frequency (IF), forexample 4.092 MHz by an appropriate RF front-end. An example of a RFdown-converter adapted to this function is described in European PatentApplication EP 1′198′068, in the name of the applicant, which is herebyincorporated by reference.

The IF signal is then fed, among others, to a correlation processor 3according to the invention, whose function is to de-spread the signalsreceived from each SV, and to align them temporally with locallygenerated copies of the pseudorandom ranging codes specific for each SV,for example, in case of a GPS receiver, the correlation processor 3 hasthe task of demodulating and tracking the coarse acquisition (C/A) GPSranging signals. To perform such alignment the correlators processor 3comprises an array of tracking modules 20, each of which comprises twonumerically controlled oscillators 210 and 220, for further convertingthe IF signal and generating a baseband signal.

Each tracking module 20 comprises also a local Gold pseudorandom codegenerator 220, for generating a local replica of the C/A codecorresponding to a particular GPS Space Vehicle. The Gold pseudorandomcodes can be generated internally, for example by a tapped shiftregister, or, equivalently, extracted from a preloaded table or by anyother technique.

The Gold code generator 220 is piloted by an independent numericallycontrolled C/A clock at about 1.023 MHz. The exact frequency of thelocal carrier frequency as well as the local C/A code frequency areadjusted, by an external CPU (not shown), to compensate for Dopplershift on the SV signal and local oscillator drift and bias. The incomingIF signal is multiplied by the in-phase (I) and quadrature (Q)components of the local carrier and by two time-shifted versions of thereplica C/A code. The result of these operations is integrated for aprogrammable period of time, to generate an integrated correlationvalue, which is loaded into a tracking module register file 201 at theend of each integration period, to be accessible to the external CPU.

In addition to the prompt correlation value, the tracking module alsogenerates a late correlation value and an early correlation value, whichare obtained by multiplying the GPS signal with a ½ chip delayed and a ½chip advanced version of the local replica code. These late and earlycorrelation values are employed in the tracking algorithm, as it will beexplained later.

The external CPU reads the correlation value stored in the registers 201of each tracking module 20, and implements SV acquisition and trackingalgorithms. In the first case the acquisition algorithm repeatedlyshifts the replica C/A code generated in a tracking module 20, byissuing a series of “slew” commands to said tracking unit, until asufficient correlation level is reached, whereupon the CPU switches totracking mode. In order to speed up the acquisition and to reduce theload on the external CPU and on the bus, the tracking module can beinstructed by the external CPU to autonomously slew the replica C/A codeon a periodical basis, for example every 1, 2 or 4 C/A code periods.

In the tracking mode the external CPU stops the periodical slewing andcontinuously monitors the integrated correlation value, and also theearly and late correlation values described above. By comparing thecurrent, early and late correlation the CPU keeps the replica C/A codetime-aligned with the C/A code coming from the Space Vehicle, byappropriately adapting the replica C/A code offset and the frequency ofthe C/A clock, as it is known in the art.

According to the tracking strategy chosen, the tracking module can alsocompute a difference between early and late correlation (early minuslate or EML), or alternate between early, prompt and late correlations.All these modes of functioning can be selected by the CPU, for exampleby acting on appropriate registers in the register file 210, and areautonomously taken in charge by the tracking module 20, without the needto interfere with the C/A code generator 220.

During tracking, as long as the local and received C/A codes remainaligned, the 50 bps GPS navigation message can be extracted. At the sametime the amount by which the replica C/A code must be shifted of keep isaligned with the incoming signal is proportional to the pseudo-rangebetween the receiver ant one particular Space Vehicle. If at least fourtracking modules 20 track four different space vehicles, and as soon asa sufficient portion of the navigation message has been downloaded, apositional fix is possible.

The complete start-up sequence, which is needed when the system isswitched on without a previous knowledge of satellite orbit parameters,comprises then the two phases of:

1. Acquiring and tracking sufficient number of GPS C/A signals onseveral tracking modules, by delay-locking the locally generated C/Acode with the incoming C/A codes. In principle a minimum of foursatellites is needed, to solve the four unknown of the problem:latitude, longitude, altitude and time. A set of measurements isgenerated by the signal processor on each of the tracked signals.2. Obtaining satellite orbit parameters and almanacs data. If this stepis carried out by use of the GPS navigation data, it can be rather long,due to the low bandwidth of such signal. A minimum of 30 seconds isrequired for the transmission of a navigation frame. Since navigationdata do not carry ranging information, they need not be downloaded fromthe space vehicle, however, and can also be obtained by otherhigher-bandwidth sources or, at least in part, stored in permanent orsemipermanent tables inside the receiver.

The tracking module of the signal processor of the invention comprisesalso a special fast acquisition mode, whose aim is to speed up theacquisition phase 1 above. FIG. 2 shows a time diagram of the fastacquisition mode (FAM) compared to the standard acquisition and trackingmode (SAM).

During standard acquisition mode the integrated correlation values ineach tracking module are dumped into the output register at each C/Acode overflow, that is the end of each C/A code period. In this way thecorrelation value is maximized. Dump times are therefore independent anduncorrelated for each tracking module, being only determined by thephase of the replica C/A code. The upper part of FIG. 2 shows therelative timing of two tracking modules, one of which 21, is in trackingmode, while the other 22, is in acquisition mode, with the C/A codeslewed at each code overflow. The CPU reads periodically the register210 of all the tracking modules 21, 22 in order to detect the completionof acquisition phases, and to implement the chosen tracking strategy.This is done in correspondence with the periodical interrupt ACC_INT.

The lower part of FIG. 2 illustrates the fast acquisition mode FAM. FAMdiffers from SAM in that the accumulated data is dumped into theregisters 210 on the ACC_INT signal, which is common to all trackingmodules, instead of on C/A code overflow. Therefore the length of theintegration period in the tracking modules is determined by the ACC_INTperiod. By reducing the integration time it is possible toproportionally reduce the acquisition time of correlation data. A directconsequence of the reduced integration period, however, is that lovercorrelation levels are expected. The reduced integration time alsoincreases the signal processor frequency bandwidth. As a consequence thescanning of the frequency space necessary during SV acquisition can beexecuted with larger steps (frequency bin). This further reduces the SVacquisition time. Only strong SV signals with a high signal-to noiseratio will produce reliable correlation values which can be detected inSAM mode. A cold start is the main application of SAM mode, during whichan exhaustive search for all the available SV is made.

In FAM mode each tracking module 20 automatically detects whether a C/Acode overflow occurred within the last integration period. In this casedata is dumped normally, but a special flag bit in the register file 210is utilized to signal this to the CPU. This avoids interpreting a databit transition of the GPS signal during FAM integration (which wouldresult in a very low correlation value) as a C/A code misalignment. Bychecking the flag bit the software running on the CPU can skip over thisdata.

As with SAM mode, the slew repeat option allows automatic slewing of theC/A code by 1 chip (or more) one each new ACC_INT. Software can checknew correlation values with the slewed C/A code sequence withoutintervening with C/A code generation. Again, to avoid the effect of aGPS data bit transition, C/A code slewing is automatically inhibited(even with the slew repeat option enabled) in the integration followinga C/A code overflow.

1. Signal processor for use in a navigation satellite receiver,comprising a plurality of tracking modules, for processing a pluralityof navigation ranging signals, each tracking module comprising: apseudorandom code generator, for generating a replica code sequence; acorrelator, for obtaining a time-integrated correlation value between anavigation ranging signal and said replica code sequence; wherein saidsignal processor has a first functioning mode, and said signal processoris arranged to simultaneously dump said time-integrated correlationvalues from said multiplicity of tracking modules when in said firstfunctioning mode.
 2. The signal processor of claim 1, wherein saidsignal processor has a second functioning mode, and said signalprocessor is arranged to independently dump said time-integratedcorrelation values from said multiplicity of tracking modules, uponcompletion of a period of said replica code sequence, when in saidsecond functioning mode.
 3. The signal processor of claim 1, whereinsaid simultaneous dump of said time-integrated correlation values takesplace on detection of an interrupt signal.
 4. Signal processor accordingto claim 1, wherein said tracking modules are arranged to repeatedlytemporally shift said replica code sequences until said replica codesequences are aligned with pseudorandom sequences contained in saidnavigation ranging signals.
 5. The signal processor of claim 1, whereinsaid tracking modules comprise means to inhibit said temporal shiftafter completion of a period of said replica code sequence.
 6. Thesignal processor of claim 1, wherein said signal processor is arrangedto monitor said time-integrated correlation values and to maintain analignment condition between said replica code sequences and saidpseudorandom sequences contained in said navigation ranging signals, byselectively temporally shifting said replica code sequences.
 7. Thesignal processor of claim 1, operatively arranged for selectivelyactivating said first functioning mode at device start-up.
 8. The signalprocessor of claim 1, operatively arranged for selectively activatingsaid first functioning mode when the strength of said navigation rangingsignals exceeds a predefined value.
 9. The signal processor of claim 1,wherein said pseudorandom sequences are GPS C/A ranging codes.
 10. GPSreceiver, comprising the signal processor of claim
 1. 11. Method foracquiring a plurality of navigation ranging signals from a plurality ofspace vehicles comprising the steps of: correlating said navigationranging signals with one of a plurality of local signals generated by aplurality of pseudorandom code generators, for obtaining a plurality oftime-integrated correlation values; slewing said pseudorandom codegenerators until said local signals are time-aligned with pseudorandomsignals contained in said navigation ranging signals; whereas saidslewing of said pseudorandom code generators takes place simultaneouslyand periodically for all said code generators, with a repetition periodwhich is shorter than the proper period of said local signals.